.desktop {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  color: var(--wos-theme-frontbar-color);

  .top {
    z-index: 100;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    height: 32px;
    padding: 0 5px;
    font-size: 14px;
    background-color: var(--wos-theme-frontbar-bg);
    backdrop-filter: blur(32px);

    .logo {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100%;
      padding: 0 15px;
      color: var(--wos-theme-frontbar-color);
      cursor: pointer;

      .iconfont {
        margin-top: -3px;
        font-size: 16px;
      }

      .el-select {
        position: absolute;
        opacity: 0;
      }
    }

    .logo:hover {
      background-color: rgb(255 255 255 / 52%);
    }

    .space {
      flex-grow: 1;
    }

    .menu {
      display: flex;
      flex-direction: row;
      height: 100%;
      font-size: 13px;
      font-weight: 500;

      .item {
        display: inline-block;
        display: flex;
        flex-grow: 1;
        align-items: center;
        justify-content: center;
        height: 100%;
        padding: 0 15px;
        font-size: 13px;
        color: var(--wos-theme-frontbar-color);
        cursor: pointer;
      }

      .item:hover {
        background-color: rgb(255 255 255 / 52%);
      }
    }

    .status {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: center;
      height: 100%;

      .network {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        padding: 0 10px;
        color: var(--wos-theme-frontbar-color);
        text-align: center;
        cursor: pointer;

        .iconfont {
          font-size: 20px;
        }

        .ElSlider {
          position: absolute;
          top: 40px;
          height: 80px;
        }
      }

      .network:hover {
        background-color: rgb(255 255 255 / 52%);
      }

      .datetime {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        width: 188px;
        height: 100%;
        padding: 0 10px;
        color: var(--wos-theme-frontbar-color);
        text-align: center;
        cursor: pointer;

        .el-calendar {
          position: fixed;
          top: 34px;
          right: 6px;
          width: 500px;
          color: #333;
          background: #fff;
          border-radius: var(--radius);
        }
      }

      .datetime:hover {
        background-color: rgb(255 255 255 / 52%);
      }

      .widget {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        padding: 0 10px;
        color: var(--wos-theme-frontbar-color);
        text-align: center;
        cursor: pointer;

        .iconfont {
          font-size: 20px;
        }
      }

      .widget:hover {
        background-color: rgb(255 255 255 / 52%);
      }
    }
  }

  .body {
    position: relative;
    flex: 1;

    .desktop-app {
      display: flex;
      gap: 16px;
      align-content: flex-start;
      height: 100%;
      padding: 16px;

      .app-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 80px;
        height: 96px;
        padding: 10px 0;
        text-align: center;
        cursor: pointer;
        border: 1px solid transparent;
        border-radius: var(--radius);
        gap: 8px;

        .icon {
          display: flex;
          align-items: center;
          justify-content: center;
          text-align: center;
        }

        .iconfont {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 48px;
          height: 48px;
          font-size: 32px;
          border-radius: var(--radius);
          border-radius: 20%;
        }

        .title {
          overflow: hidden;
          font-size: 12px;
          text-overflow: ellipsis;
          white-space: nowrap;
        }
      }

      .app-item:hover {
        color: white;
        background-color: rgb(255 255 255 / 52%);
        overflow: unset;
        height: fit-content;

        .title {
          overflow: unset;
          white-space: wrap;
          word-break: break-all;
          word-wrap: break-word;
        }

        .icon {
          animation: app-item-hover 0.5s;
        }
      }
    }

    .contextmenu {
      position: absolute;
      z-index: 100;
      width: 200px;
      padding: 2px 0;
      overflow: hidden;
      font-size: 14px;
      text-align: left;
      text-shadow: none;
      background: var(--wos-box-right-bg);
      border-radius: var(--radius);

      hr {
        border: none;
        border-top: 1px solid var(--wos-border-color);
      }

      div {
        display: flex;
        align-items: center;
        padding: 0 12px;
        margin: 3px 5px;
        overflow: hidden;
        font-size: 13px !important;
        line-height: 2;
        color: var(--el-text-color-regular);
        text-overflow: ellipsis;
        white-space: nowrap;
        cursor: pointer;
        border-radius: var(--radius);
      }

      div:hover {
        color: white;
        background: #4b9efb;
        border-radius: var(--radius);
      }
    }

    .left,
    .right {
      position: absolute;
      top: 0;
      bottom: 0;
    }

    .left {
      left: 0;

      .desktop-app {
        flex-flow: column wrap;
      }
    }

    .right {
      right: 0;

      .desktop-app {
        flex-flow: column wrap-reverse;
      }
    }
  }

  .footer {
    z-index: 100;
    display: flex;
    justify-content: center;
  }
}

.top {
  .el-dropdown {
    height: 100% !important;
    color: white !important;
  }

  .el-calendar-day {
    height: 30px !important;
  }

  .is-today {
    color: white !important;
    background: #4b9efb !important;
  }
}

.top-dropdown-menu {
  margin-top: -6px;
}
